﻿using System;
using SharpSqlAnalyzer.nodes;

namespace SharpSqlAnalyzer.stmt.mssql
{
	// Token: 0x02000182 RID: 386
	public class TMssqlRollback : TCustomSqlStatement
	{
		// Token: 0x06000D87 RID: 3463 RVA: 0x00308CC4 File Offset: 0x00306EC4
		public TMssqlRollback(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.sstmssqlrollback;
		}

		// Token: 0x17000278 RID: 632
		// (get) Token: 0x06000D88 RID: 3464 RVA: 0x00308CD8 File Offset: 0x00306ED8
		// (set) Token: 0x06000D89 RID: 3465 RVA: 0x00308CE0 File Offset: 0x00306EE0
		public virtual TObjectName TransactionName
		{
			get
			{
				return this.transactionName;
			}
			set
			{
				this.transactionName = value;
			}
		}

		// Token: 0x06000D8A RID: 3466 RVA: 0x00308CE9 File Offset: 0x00306EE9
		internal override void buildsql()
		{
		}

		// Token: 0x06000D8B RID: 3467 RVA: 0x00308CEB File Offset: 0x00306EEB
		internal override void clear()
		{
		}

		// Token: 0x06000D8C RID: 3468 RVA: 0x00308CED File Offset: 0x00306EED
		internal override string getasprettytext()
		{
			return "";
		}

		// Token: 0x06000D8D RID: 3469 RVA: 0x00308CF4 File Offset: 0x00306EF4
		internal virtual void iterate(TVisitorAbs pvisitor)
		{
		}

		// Token: 0x17000279 RID: 633
		// (get) Token: 0x06000D8E RID: 3470 RVA: 0x00308CF6 File Offset: 0x00306EF6
		public virtual TSourceToken Trans_or_work
		{
			get
			{
				return this.trans_or_work;
			}
		}

		// Token: 0x06000D8F RID: 3471 RVA: 0x00308D00 File Offset: 0x00306F00
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			TDummy tdummy = (TDummy)this.rootNode;
			base.doParseStatement(psql);
			this.transactionName = (TObjectName)tdummy.node1;
			if (this.transactionName != null)
			{
				this.transactionName.ObjectType = 21;
			}
			this.trans_or_work = tdummy.st1;
			return 0;
		}

		// Token: 0x06000D90 RID: 3472 RVA: 0x00308D5E File Offset: 0x00306F5E
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000D91 RID: 3473 RVA: 0x00308D6E File Offset: 0x00306F6E
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x04001310 RID: 4880
		private TObjectName transactionName;

		// Token: 0x04001311 RID: 4881
		private TSourceToken trans_or_work;
	}
}
